package org.example.studyonline.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.example.studyonline.pojo.Course;
import org.example.studyonline.pojo.DTO.*;
import org.example.studyonline.pojo.VO.ChapterVO;
import org.example.studyonline.pojo.VO.CourseListVO;
import org.example.studyonline.pojo.PageBean;
import org.example.studyonline.pojo.VO.CourseVO;
import org.example.studyonline.pojo.VO.StatisticsVO;

public interface CourseService extends IService<Course> {

    PageBean<CourseListVO> getCourseList(Long pageNum, Long pageSize);

    CourseVO getChapters(Integer courseID);

    void update(UpdateCourseDTO updateCourseDTO);

    void add(AddCourseDTO addCourseDTO);

    void delete(DeleteCourseDTO deleteCourseDTO);

    PageBean<StatisticsVO> getStatistics(Long pageNo,Long pageSize);

    PageBean<CourseListVO> searchCourse(String keyword, Long pageNo, Long pageSize);
    PageBean<WatchCountDTO> getWatchOut(Long pageNum, Long pageSize);

    PageBean<CategoryCountDTO> getCategoryCount(Long pageNum, Long pageSize);
}
